翻訳と辞書
Words near each other
・ Concord Township, Delaware County, Ohio
・ Concord Township, Delaware County, Pennsylvania
・ Concord Township, Dixon County, Nebraska
・ Concord Township, Dodge County, Minnesota
・ Concord Township, Dubuque County, Iowa
・ Concord Township, Elkhart County, Indiana
・ Conclusions of Utrecht
・ Conclusive evidence
・ Conclusive presumption
・ Conco
・ Concobar mac Tadg Ua Cellaigh
・ Concobur Ó Caiside
・ Concoctio
・ Concoction
・ ConCoction (convention)
Concolic testing
・ Concolitanus
・ Concomitance (doctrine)
・ Concomitant
・ Concomitant (statistics)
・ Concomitant drug
・ Conconi test
・ Conconully Dam
・ Conconully State Park
・ Conconully, Washington
・ Concor
・ CONCORD
・ Concord
・ Concord (1683)
・ Concord (BART station)


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Concolic testing : ウィキペディア英語版
Concolic testing
Concolic testing (a portmanteau of ''concrete'' and ''symbolic'') is a hybrid software verification technique that performs symbolic execution, a classical technique that treats program variables as symbolic variables, along a ''concrete execution'' (testing on particular inputs) path. Symbolic execution is used in conjunction with an automated theorem prover or constraint solver based on constraint logic programming to generate new concrete inputs (test cases) with the aim of maximizing code coverage. Its main focus is finding bugs in real-world software, rather than demonstrating program correctness.
A description and discussion of the concept was introduced in DART by Patrice Godefroid, Nils Klurland, and Koushik Sen.〔
〕 The paper "CUTE: A concolic unit testing engine for C", by Koushik Sen, Darko Marinov, and Gul Agha, further extended the idea to data structures, and first coined the term ''concolic testing''. Another tool, called EGT (renamed to EXE and later improved and renamed to (KLEE )), based on similar ideas was independently developed by Cristian Cadar and Dawson Engler in 2005, and published in 2005 and 2006. (PathCrawler ) first proposed to perform symbolic execution along a concrete execution path, but unlike concolic testing PathCrawler does not simplify complex symbolic constraints using concrete values. These tools (DART and CUTE, EXE) applied concolic testing to unit testing of C programs and concolic testing was originally conceived as a white box improvement upon established random testing methodologies. The technique was later generalized to testing multithreaded Java programs with jCUTE,〔
〕 and unit testing programs from their executable codes (tool OSMOSE).〔
,
〕 It was also combined with fuzz testing and extended to detect exploitable security issues in large-scale x86 binaries by Microsoft Research's SAGE.〔
〕〔

The concolic approach is also applicable to model checking. In a concolic model checker, the model checker traverses states of the model representing the software being checked, while storing both a concrete state and a symbolic state. The symbolic state is used for checking properties on the software, while the concrete state is used to avoid reaching unreachable state. One such tool is ExpliSAT by Sharon Barner, Cindy Eisner, Ziv Glazberg, Daniel Kroening and Ishai Rabinovitz〔Sharon Barner, Cindy Eisner, Ziv Glazberg, Daniel Kroening, Ishai Rabinovitz: ExpliSAT: Guiding SAT-Based Software Verification with Explicit States. Haifa Verification Conference 2006: 138-154〕
== Birth of concolic testing ==

Implementation of traditional symbolic execution based testing requires the implementation of a full-fledged symbolic interpreter for a programming language. Concolic testing implementor noticed that implementation of a full-fledged symbolic execution can be avoided if symbolic execution can be piggy-backed with the normal execution of a program through instrumentation. This idea of simplifying implementation of symbolic execution gave birth to concolic testing.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Concolic testing」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.